Hệ thống quản lý trường học bằng PHP / MySQLi
1 <?php
2 error_reporting(0);
3 $conn=mysqli_connect('localhost','root','','sms2')or die(mysqli_error("Connection error"));
4 ?>
5 <?php
6 require_once('session1.php');
7
8 ?>
9 <?php
10 SESSION_START();
11 ?>
12 <?php
13 $id = $_GET['id'];
14 $select = "SELECT * FROM
15 studentstable
16 WHERE admission_number='$id'";
17 $result = mysqli_fetch_array(mysqli_query($conn,$select));
18
19 $qry=mysqli_query($conn,$select);
20 if($qry)
21 {
22 while($rec = mysqli_fetch_assoc($qry)){
23 $sirname = "$rec[sirname]";
24 $firstname = "$rec[firstname]";
25 $lastname = "$rec[lastname]";
26 $idno = "$rec[idno]";
27 $dateofbirth = "$rec[dateofbirth]";
28 $gender = "$rec[gender]";
29 $country_id = "$rec[country_id]";
30 $county_id = "$rec[county_id]";
31 $constituency_id = "$rec[constituency_id]";
32 $mobile = "$rec[mobile]";
33 $email = "$rec[email]";
34 $address = "$rec[address]";
35 $zipcode = "$rec[zipcode]";
36 $course_id = "$rec[course_id]";
37 $intake_id = "$rec[intake_id]";
38 $reg_date = "$rec[reg_date]";
39 //LOAD PARENT DETAILS TOO
40 $psirname = "$rec[psirname]";
41 $pfirstname = "$rec[pfirstname]";
42 $plastname = "$rec[plastname]";
43 $pmobile = "$rec[pmobile]";
44 $prelationship = "$rec[prelationship]";
45 }
46
47
48
49 }
50
51
52 ?>
53 <?php
54 include('connect.php');
55 $query="SELECT * FROM course WHERE course_id='$course_id'";
56 $records2=mysqli_query($db,$query);
57 while($rec=mysqli_fetch_assoc($records2))
58 {
59 $course_id2 = $rec['coursename'];
60
61 }
62
63
64 ?>
65
66
67 <!DOCTYPE html>
68 <html>
69
70 <head>
71 <meta charset="utf-8">
72 <meta name="viewport" content="width=device-width, initial-scale=1.0">
73 <title>school management system</title>
74 <link rel="shortcut icon" href="assets/img/title.gif" type="image/x-icon">
75 <link rel="stylesheet" href="assets/css/bootstrap.min.css">
76 <link href="assets/css/loader.css" rel="stylesheet" />
77 <script src="assets/js/canvasjs.min.js"></script>
78 <!--*****jquery -3.2.1.js file supports the use of dropdown***-->
79 <script src="assets/js/jquery-3.2.1.js"></script>
80
81 <!--this is javascript codes to sum up values as user inputs them-->
82 <script type='text/javascript'>
83 function sumValues() {
84 var v1 = parseFloat(document.getElementById('box1').value);
85 var v2 = parseFloat(document.getElementById('box2').value);
86 var v3 = parseFloat(document.getElementById('box3').value);
87 var v4 = parseFloat(document.getElementById('box4').value);
88 var v5= parseFloat(document.getElementById('box5').value);
89 document.getElementById('box6').value = v1 + v2 + v3 + v4 + v5;
90 }
91 </script>
92 <!--this is javascript codes to sum up values as user inputs them-->
93 <!--printing the reciept-->
94
95 <script language="javascript" type="text/javascript">
96 function printDiv(divID) {
97 //Get the HTML of div
98 var divElements = document.getElementById(divID).innerHTML;
99 //Get the HTML of whole page
100 var oldPage = document.body.innerHTML;
101
102 //Reset the page's HTML with div's HTML only
103 document.body.innerHTML = "<html><head><title></title></head><body>" + divElements + "</body>";
104
105 //Print Page
106 window.print();
107
108 //Restore orignal HTML
109 document.body.innerHTML = oldPage;
110 }
111 </script>
112 <style type="text/css">
113 #box1,#box2,#box3,#box4,#box5,#box6,#rf,#c,#an,#d{
114 border-right:0 px solid;
115 color:purple;
116 border-right: none;
117 border-left: none;
118 border-top: none;
119 outline: none;
120 background-color:skyblue;
121 }
122 </style>
123
124 </head>
125
126 <body >
127 <!--end of heading section-->
128 <ul class="nav navbar-right top-nav">
129 <div class="dropdown">
130 <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown" >
131 <?php
132 //Check to see if the user is logged in.if not redirect user to the loging page.
133
134 if(isset($_SESSION['fname']))
135 {
136 echo "Current user: ".$_SESSION['fname']. " ".$_SESSION['lname']. " ";
137 }else{
138 echo "<script type='text/javascript'>
139 alert( 'You must Log in to use the system');
140 </script>";
141 echo "<script>
142 window.location = 'index.php'
143 </script>";
144 }
145 ?>
146 <span class="caret"></span></button>
147 <ul class="dropdown-menu">
148 <li><a href="manage_account.php"><i class="fa fa-users fa-lg"></i> View User</a></li>
149 <li><a href="register_form.php"><i class="fa fa-users fa-lg"></i> Add New User</a></li>
150 <li class="divider"></li>
151 <li><a href="session_logout.php"><i class="fa fa-fw fa-power-off"></i> Log Out</a></li>
152 </ul>
153 </div>
154 </ul>
155 <!--************************************************-->
156 <div style="
157 font-family:Nyala, Arial;
158 text-align: left;
159 background-color: #526F35;
160 padding: 20px;
161 color:white;
162 width: 100%;
163 height: 150px;">
164 <!--This codes to load the image loader-->
165 <div id="loading">
166 <img id="loading-image" src="assets/img/loader.gif" alt="Loading..." />
167 </div>
168 <!--this is the heading section-->
169 <h2>
170 <?php
171 $sql="SELECT * FROM companyinfo";
172 $result=mysqli_query($db,$sql) or die("error getting data");
173 $num_rows=mysqli_num_rows($result);
174 while($row=mysqli_fetch_assoc($result))
175 {
176 echo '<image style="height:82px; width:82px;" src="data:image;base64,'. $row['clogo'].' "> ';
177 $cname = $row['cname'];
178 $cemail = $row['cemail'];
179 $ccontact = $row['ccontact'];
180 $clocation = $row['clocation'];
181 }?>
182 <?php
183 echo $cname;
184 ?>
185
186 <div style="float:right; font-size:20px;text-align:right;">
187
188 <img src="assets/img/mail2.png">Email: <?php echo $cemail; ?><br>
189 <img src="assets/img/call1.png">Contact:<?php echo $ccontact; ?><br>
190 <img src="assets/img/location.png">Location: <?php echo $clocation; ?>
191
192 </div>
193 </h2>
194 </div>
195 <!--end of heading section-->
196
197 <div>
198 <ul class="nav nav-tabs">
199 <li ><a href="homepage.php" >Administration <img src="assets/img/details.png"></a></li>
200 <li ><a href="students.php" >Students <img src="assets/img/student48.png"></a></li>
201 <li><a href="staff.php">Staff Member <img src="assets/img/staff48.png"></a></li>
202 <li><a href="course.php" >Courses <img src="assets/img/course.png"></a></li>
203 <li><a href="departments.php" >Departments <img src="assets/img/department.png"></a></li>
204 <li><a href="markstep1.php" >Exams <img src="assets/img/update.png"></a></li>
205 <li><a href="hostel.php" >Hostel <img src="assets/img/details.png"></a></li>
206 <li class="active"><a href="parents.php">School fee <img src="assets/img/details.png"></a></li>
207 <!--<li><a href="tab-8" role="tab" data-toggle="tab">Hostel <img src="assets/img/details.png"></a></li>
208 <li><a href="tab-7" role="tab" data-toggle="tab">Parents <img src="assets/img/details.png"></a></li>-->
209
210 </ul>
211 <div class="tab-content">
212 <div class="tab-pane active" role="tabpanel" id="tab-1">
213
214 <p>
215 <div class="table-responsive" >
216 <!--**************************************************************************************************************************-->
217 <div class="container" style="width:100%">
218
219 <ul class="nav nav-tabs">
220 <li ><a href="feestudents.php">Students List<img src="assets/img/new.png"> </a></li>
221 <li class="active"><a href="fee.php">Recieve Fee<img src="assets/img/new.png"> </a></li>
222 <li ><a href="csvfee.php">Import/Export CSV<img src="assets/img/export.png"></a></li>
223 <li ><a href="printfeeinvoice.php">Print Invoice<img src="assets/img/print.png"> </a></li>
224 <li ><a href="fee_reports.php">Reports<img src="assets/img/print.png"> </a></li>
225
226 </ul>
227 <br>
228
229 </div>
230 <!--**************ths is the success msg on saving the cord-->
231 <div class="container-fluid">
232 <div class="row">
233 <div class="col-lg-6 col-lg-offset-3">
234 <div class="panel panel-primary">
235 <div class="panel-heading">Recieve School fees</div>
236
237 <!-- /.panel-heading -->
238 <div class="panel-body">
239 <div class="table">
240
241
242
243 <form action="fee.php" method="POST" enctype="multipart/form-data">
244 <div id="printablediv">
245 <div class="formelements">
246 <form action="fee.php" method="POST" enctype="multipart/form-data" >
247 <label>Recieved from:</label>
248 <input type="text" id="rf" name="name" value="<?php echo $sirname." ".$firstname." ".$lastname; ?>" class="form-control" readonly>
249
250 <label>Admmission number:</label>
251 <input type="text" readonly id="an" name="admission_number" value="<?php echo $id ;?>" class="form-control" >
252
253 <label>Course/Class:</label>
254 <input type="text" id="c" name="course_id" value="<?php echo $course_id2 ;?>" class="form-control" readonly>
255
256 <label>Term:</label>
257 <select id="an" name="term_id" class="form-control">
258 <option>1</option>
259 <option>2</option>
260 <option>3</option>
261 <option>4</option>
262 </select>
263
264
265
266 <label>Date:</label>
267 <input type="date" id="d" name="tdate" value="<?php echo date("Y-m-d") ;?>" class="form-control">
268
269 REF #:[IN THE FORM <I><b>MONTH/YEAR/RECIEPT NO.</b></I>]
270 <input type="text" id="an" name="refno" placeholder="e.g LD125YZ. Can also be reciept number in the manual record. e.g 4510" class="form-control"
271 value="<?PHP echo date('m')."/".date('y')."/" ?>" >
272
273
274 Method Used ["Other" method may include payments made via MPESA or PAYBILL ]
275
276 <select class="form-control" name="method">
277 <option>Cash</option>
278 <option>Cheque</option>
279 <option>Bank[Direct deposit]</option>
280 <option>Postal Order</option>
281 <option>Others</option>
282 </select>
283 <table>
284 <tr>
285 <td>[Amount Paid]</td>
286 <td>
287
288 <?php
289 //for for that class
290 $id = $_GET['id'];
291 $sql ="SELECT * from course where course_id=
292 (SELECT course_id FROM studentstable
293 WHERE admission_number='$id') ";
294 $user_query=mysqli_query($db,$sql) or die("error getting data");
295 while($row = mysqli_fetch_assoc($user_query)){
296 $feepayable = $row['feepayable'];
297 }
298 ?>
299
300
301
302 <?php
303 //check whather the students has paid for that year as you sum up
304 $id=$_GET['id'];
305 $sql="SELECT SUM(amount) AS value_sum FROM fee WHERE
306 admission_number='$id' AND
307 course_id=(SELECT course_id FROM studentstable
308 WHERE admission_number='$id') ";//two conditions here must be met
309 $user_query=mysqli_query($db,$sql) or die("error getting data");
310 while($row = mysqli_fetch_assoc($user_query)){
311
312 $totalpaid= $row['value_sum'];
313 }?>
314
315
316 <?php
317
318 $balance=$feepayable-$totalpaid;
319 if ($balance<0)
320 {
321 $msg="The student has an overpayment of $balance";
322 }
323 elseif($balance>0)
324 {
325 $msg="The Student is having fee balance of $balance";
326 }
327 else
328 {
329 $msg="The student has no fee balance";
330 }
331
332 ?>
333 <input type="number" name="totalpaid" id="an" readonly class="form-control" value="<?php echo $totalpaid; ?>"></td>
334
335 <td>[Amount Payable]</td><td><input type="number" id="an" name="feepayable" readonly class="form-control" value="<?php echo $feepayable; ?>"></td>
336 <td>[Remaining Balance]</td><td><input type="number" id="an" name="feepayable" readonly class="form-control" value="<?php echo $balance; ?>"></td>
337
338
339 </tr>
340 <tr>
341 <td colspan="4"> <input type="text" readonly name="OVERPAYMENT" class="form-control" style="background-color:white" value="<?php echo $msg; ?>"> </td>
342 <td>[Money Recieved]</td><td> <input type="number" name="amount" class="form-control" min="0" style="background-color:white" > </td></tr></table>
343
344 <br>
345 <input type="submit" name="register" enable="false" id="button2" onclick="sumValues()" value=" Register Transaction" class="btn btn-success">
346 <input type="button" value="Print Reciept" onclick="javascript:printDiv('printablediv')" class="btn btn-success">
347 <a button type='button' class="btn btn-primary" href="feestudents.php">Back</a>
348 </form>
349 <!--*************************************PHP CODES TO SAVE THE DATA************************************************-->
350 </div>
351
352 <?php
353 $conn=mysqli_connect('localhost','root','','sms2')or die(mysqli_error("Connection error"));
354 if (isset($_POST['register'])){
355 $method=$_POST['method'];
356 $refno=$_POST['refno'];
357 $admission_number=$_POST['admission_number'];
358 $tdate=$_POST['tdate'];
359 $term_id=$_POST['term_id'];
360 $amount=$_POST['amount'];
361 $captured_by=$_SESSION['fname']." ".$_SESSION['lname'];
362
363
364 $xx=$_POST['course_id'];
365 $sql="SELECT * FROM course WHERE coursename='$xx'";
366 $user_query=mysqli_query($db,$sql) or die("error getting data");
367 while($row = mysqli_fetch_assoc($user_query)){
368 $course_id = $row['course_id'];
369 }
370 mysqli_query($conn,"INSERT INTO fee (method, refno, admission_number, tdate, course_id, term_id, amount,captured_by)
371 VALUES ('$method','$refno','$admission_number','$tdate','$course_id','$term_id','$amount','$captured_by')") or die(mysqli_error());
372
373 ?>
374 <?php
375 $query="SELECT * FROM fee";
376 $records2=mysqli_query($db,$query);
377 while($rec=mysqli_fetch_assoc($records2))
378 {
379 $id = $rec['reciept'];
380 }?>
381
382 <script>
383
384 alert('Transaction recorded Succsessfully');
385 window.location = "feestudents.php?id=<?php echo $id;?>";
386 </script>
387
388
389 <?php
390 //<!--*******************************try add parent's details******************************************************-->
391
392 }?>
393 <!--**********************************************************************************************************************-->
394 </div>
395
396 </p>
397
398
399 </div>
400
401 </div>
402 </div>
403 </div>
404 </div>
405 </div>
406 </div>
407 </div>
408
409 <div class="col-md-12" style="background-color:#526F35;bottom:0px; position:fixed;">
410 <p class="text-center text-danger" style="color:white;" >@J. Muthama Tel: +254729734768 <?php echo date("Y");?></p>
411 </div>
412 <script src="assets/js/jquery.min.js"></script>
413 <script src="assets/bootstrap/js/bootstrap.min.js"></script>
414 <script src="assets/js/affix.js"></script>
415 <script src="assets/js/alert.js"></script>
416 <script src="assets/js/alert1.js"></script>
417 <script src="assets/js/bootstrap.js"></script>
418 <script src="assets/js/bootstrap.min.js"></script>
419 <script src="assets/js/bootstrap-datepicker.js"></script>
420 <script src="assets/js/bootstrap-wysihtml5.js"></script>
421 <script src="assets/js/button.js"></script>
422 <script src="assets/js/carousel.js"></script>
423 <script src="assets/js/chosen.jquery.min.js"></script>
424 <script src="assets/js/ckeditor.js"></script>
425 <script src="assets/js/collapse.js"></script>
426 <script src="assets/js/color.js"></script>
427 <script src="assets/js/dropdown.js"></script>
428 <script src="assets/js/DT_bootstrap.js"></script>
429 <script src="assets/js/dynamic.js"></script>
430 <script src="assets/js/ie-emulation-modes-warning.js"></script>
431 <script src="assets/js/jquery.dataTables.js"></script>
432 <script src="assets/js/jquery.dataTables.min.js"></script>
433 <script src="assets/js/jquery.dialog.js"></script>
434 <script src="assets/js/jquery.hoverdir.js"></script>
435 <script src="assets/js/jquery.jgrowl.js"></script>
436 <script src="assets/js/jquery.knob.js"></script>
437 <script src="assets/js/jquery.uniform.min.js"></script>
438 <script src="assets/js/jquery-1.8.3.min.js"></script>
439 <script src="assets/js/jquery-1.9.1.js"></script>
440 <script src="assets/js/jquery-1.9.1.min.js"></script>
441 <script src="assets/js/jquery-1.10.2.js"></script>
442 <script src="assets/js/jquery-1.11.0.js"></script>
443 <script src="assets/js/jquery-ui-1.9.2.custom.min.js"></script>
444 <script src="assets/js/jquery-ui-1.10.3.js"></script>
445 <script src="assets/js/modal.js"></script>
446 <script src="assets/js/modernizr-2.6.2-respond-1.1.0.min.js"></script>
447 <script src="assets/js/myjquery.js"></script>
448 <script src="assets/js/myjquery1.js"></script>
449 <script src="assets/js/npm.js"></script>
450 <script src="assets/js/popover.js"></script>
451 <script src="assets/js/profile.js"></script>
452 <script src="assets/js/raphael-min.js"></script>
453 <script src="assets/js/sb-admin-2.js"></script>
454 <script src="assets/js/scripts.js"></script>
455 <script src="assets/js/scrollspy.js"></script>
456 <script src="assets/js/tab.js"></script>
457 <script src="assets/js/tooltip.js"></script>
458 <script src="assets/js/transition.js"></script>
459 <script src="assets/js/wysihtml5-0.3.0.js"></script>
460 <script language="javascript" type="text/javascript">
461 $(window).load(function()
462 {
463 $('#loading').hide();
464 });
465 </script>
466 </body>
467
468 </html>